from flask import Flask,jsonify,url_for,redirect,request
#加载配置的config文件
import config

app=Flask(__name__)

#配置文件，所有配置项都放到config
app.config.from_object(config)

#定义相关的数据
books=[{'id':1,'name':'三国演义'},
      {'id':2,'name':'水浒传'},
      {'id':3,'name':'西游记'},
      {'id':4,'name':'红楼梦'}]

#若传入的为动态值
@app.route('/book/<int:book_id>/')
#从上面传入book_id
def book(book_id):
    #在上面books中寻找与book_id相同的值
    for i in books:
        if book_id==i['id']:
            return i
    return f"id为:{book_id}没有找到"

#jsonify可以有效的将上述定义的数据在网页上面以json的
#形式展现
@app.route("/book/list/")

#视图函数传url
def book_list():
    for book in books:
        book['url']=url_for('book',book_id=book['id'])
    return jsonify(books)

#重定向
#永久性重定向：状态码为301
#暂时性重定向：状态码为302

@app.route('/profile/')

def profile():
    #参数传递的两种形式
    #1.作为url的组成：/book/1
    #2.查询字符串：/book?id=1
    #args是获取url当中的参数，下面就是获取用户的id
    user_id=request.args.get('id')
    if user_id:
        return "用户中心"
    else:
        #否则，转回首页内容
        return redirect(url_for("hellow_world"))
        





@app.route('/')

def hellow_world():
    return {'hellow':'治疗'}

if __name__=='__main__':
#    app.run(debug=True)
    app.run()

